<?php

class Deposito extends CI_Controller {

    function __construct() {
        // Call the Model constructor
        parent::__construct();
        if ($sessionData = $this->session->userdata('datosUser')) {
            $this->lang->load($sessionData['idioma'], $sessionData['idioma']);
            $this->load->model('backend/deposito/mdeposito');
            $this->clear_cache();
        } else {
            redirect('frontend/login/login');
        }
    }

    function clear_cache() {
        $this->output->set_header("Cache-Control: no-store, no-cache, must-revalidate, no-transform, max-age=0, post-check=0, pre-check=0");
        $this->output->set_header("Pragma: no-cache");
    }

    /**
     * Carga los datos de los depositos y carga la vista con ellos
     *
     */
    public function index() {
        $data['depositos'] = $this->mdeposito->getDepositos();
        $this->cargamenu->cargaTodo("backend/deposito/listaDeposito", $data);
    }

    /**
     * Carga los datos de las cuenta de un cliente, y la informacion de un deposito concreto, y carga la vista
     *
     * @param string $id
     */
    function infoDeposito($id) {
        $datosUsuario = $this->session->userData('datosUser');
        $this->load->model('backend/cuenta/mcuenta');
        $data['cuentas'] = $this->mcuenta->misCuentas($datosUsuario['idCliente']);
        $data['deposito'] = $this->mdeposito->infoDeposito($id);
        $this->cargamenu->cargaTodo("backend/deposito/solicitaDeposito", $data);
    }

    /**
     * Carga los datos por post de una cuenta de un cliente, genera una soliticitud de deposito, genera una notifiacion y redirige a solicitudes
     *
     */
    function solicitar() {
        $datosUsuario = $this->session->userData('datosUser');
        $iddep = $this->input->post('idDep');
        $importe = $this->input->post('saldo');
        $cuenta = $this->input->post('cuenta');
        $cliente = $datosUsuario['idCliente'];
        $this->mdeposito->guardarSolicitud($iddep, $importe, $cuenta, $cliente);
        $this->load->model('backend/notificacion/mnotificacion');
        $data['text'] = "Solicitud para deposito registrada. En breve nos pondremos en contacto con usted.";
        $data['asunto'] = lang('solicitudDeposito');
        $data['idCliente'] = $cliente;
        $this->mnotificacion->insertarNotificacion($data);
        redirect("backend/solicitud/solicitud");
    }

    /**
     * Carga los datos de los depositos del cliente iniciado y carga la vista
     *
     */
    function misDepositos() {
        $datosUsuario = $this->session->userData('datosUser');
        $cliente = $datosUsuario['idCliente'];
        $data['depositos'] = $this->mdeposito->misDepositos($cliente);
        $this->cargamenu->cargaTodo("backend/deposito/misDepositos", $data);
    }

}